package celular.abstracts;

public abstract class Celular implements Comparable<Celular>{
	
	public Celular(){}
	
	
	private String nome;
	

	private double vlCredito;
	
	
	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public double getVlCredito() {
		return vlCredito;
	}
	
	public void setVlCredito(double vlCredito) {
		this.vlCredito = vlCredito;
	}
	
	@Override
	public String toString() {
		return "Celular [nome=" + nome + ", vlCredito=" + vlCredito + "]";
	}
	
		
	public abstract void discaNumero(String numero);
	
	protected abstract boolean sePossuiCredito();
	
	
	@Override
	public int compareTo(Celular o) {
		
		if(this.nome.charAt(0) < o.nome.charAt(0)) return -1;
		else if(this.nome.charAt(0) > o.nome.charAt(0)) return 1;		
		
		return 0;
	}	
	

}
